export interface IGroup {
  id: number;
  name: string;
  companyIds: string[];
  isDefault?: number;
  closePush?: number;
  companyCount?: number;
  desc?: any;
  iconUrl?: any;
  orderNum?: number;
}

export interface EditGroupParams {
  name: string;
  items?: string[];
  iconUrl?: string;
  desc?: string;
}

export interface GroupNewsParams {
  limit: number;
  offset: number;
  codeLevel1?: string;
  codeLevel2?: string;
  codeLevel3?: string;
  years?: string;
  sortRule?: string;
}

export interface AddGroupParams {
  name: string;
  items?: string[];
  desc?: string;
  iconUrl?: string;
}

export interface GroupItemsParams {
  limit: number;
  offset: number;
  sortType: string;
  groupId: number;
  searchTxt: string;
}

export enum DELETE_TYPE {
  GROUP = 'group',
  MEMBER = 'member'
}

export interface DeleteMemberParams {
  groupId: number;
  ids: string;
}

export interface SerachItem {
  name: string;
  id: string;
  [key: string]: any;
}

export interface SearchParams {
  wd: string | number;
  limit: number;
  offset: number;
}

export interface ImportResultItem {
  companyId: string;
  companyName: string;
  failReason: any;
  successOrFail: number;
}

export interface ImportResult {
  successTotal: number;
  failTotal: number;
  importInfos: ImportResultItem[];
}

export interface PushSettingParams {
  realTimeStatus: number;
}
